package com.w7vm.menuweb.facade;

import java.util.List;

import javax.ejb.EJB;
import javax.ejb.Remote;
import javax.ejb.Stateless;

import com.w7vm.menuweb.dao.AcessoDAO;
import com.w7vm.menuweb.entity.AcessoWeb;

@Stateless(name="AcessoEJB")
@Remote(AcessoFacade.class)
public class AcessoFacadeImp implements AcessoFacade {

	@EJB
	private AcessoDAO acessoDAO; 
	
	@Override
	public List<AcessoWeb> findAcessoRestauranteByUsuario(String username) {
		return acessoDAO.findAcessoRestauranteByUsuario(username);
	}

	@Override
	public List<AcessoWeb> findUsuariosByPerfilAdmConta(int idRestaurante) {
		return acessoDAO.findUsuariosAllByCodRestaurante(idRestaurante);
	}
	
	public List<AcessoWeb> findUsuariosByPerfilAdmRestaurante(int idUsuario, int idRestaurante, String tipo){
		return acessoDAO.findUsuariosSedeFilialByCodRestaurante(idUsuario,idRestaurante, tipo);
	}
	
	@Override
	public List<AcessoWeb> findUsuariosByPerfilUsuario(String username) {
		return acessoDAO.findUsuarioByCodUsuario(username);
	}
	
	@Override
	public List<AcessoWeb> findUsuarioAcessoByIDUsuario(int username) {
		return acessoDAO.findUsuarioAcessoByCodUsuario(username);
	}
	
	@Override
	public AcessoWeb saveAcesso(AcessoWeb acesso) {
		return acessoDAO.saveAcesso(acesso);
	}
	
	
	@Override
	public List<String> findUsuariosByRestaurante(int idRestaurante) {
		return acessoDAO.findUsuarioByCodRestaurante(idRestaurante);
	}
	
	public List<AcessoWeb> findRestauranteAcessoByIDUsuario(int idUsuario){
		return acessoDAO.findRestauranteByCodUsuario(idUsuario);
	}

	@Override
	public AcessoWeb updateAcesso(AcessoWeb entity) {
		return acessoDAO.mergeAcesso(entity);
	}

	public List<AcessoWeb> findTipoAcessoByIDUsuario(int idUsuario){
		return acessoDAO.findTipoAcessoByCodUsuario(idUsuario);
	}

	

}
